********************************************************** * * * Make your Turbo C programs self-aware of themselves! * * * ********************************************************** (C)Copyright 1988, Gilmore Systems Gilmore Systems P.O. Box 3831 Beverly Hills, CA 90212-0831 U.S.A. Voice: (213) 275-8006 Data: (213) 276-5263 Now you can allow your COMPILED Turbo C pgms to check themselves for changes in their CRC or filesize, thus detecting if a virus has modified them. Viruses have become a problem - altering *.EXE and *.COM files these days. Not just viruses, but hackers who modify shareware programs because they don't like looking at the opening screens. Well, if you're a programmer using Turbo C, you now have a means of protection. You can make your programs aware of their own CRC and filesize - the 2 most likely things to change in the event of a virus or hacker attack. Enclosed in this archive is this READ.ME file, MAKAWARE.EXE (exe initializer), EXAMPLE.C (sample source for using the checker), and 6 OBJ's - one for each memory model which you can link with your programs to offer you (or your program) security. These OBJ's contain the function exeaware() as follows: exeaware(pgmname) char *pgmname; RETURNS: 0 - no changes, file unaltered. 1 - CRC changed, file altered. 2 - size changed, file altered. 3 - both CRC and size changed, file altered. The passed parameter "pgmname", is the name of your running program. For example purposes, you could call the function as follows: main(argc,argv) int argc; char **argv; { extern int exeaware(); int result; ; ; ; result = exeaware(argv[0]); /* this is how to call the function */ switch(result) { case 1: printf("CRC changed\n"); break; case 2: printf("size changed\n"); break; case 3: printf("CRC and size changed\n"); break; case 0: default: printf("No changes\n"); break; } ; ; ; } We've included a source file named "example.c" to demonstrate how this works. It first calls exeaware() and proves that nothing has been altered in the file. It then alters itself by adding a single byte to the end of the file and re-calls exeaware(), proving that the CRC and size of file has changed. See the "example.c" file for details on compiling and linking. To use this code, take note of the memory model you're using and link with the appropriate .obj file: exeawart.obj - tiny model exeawarc.obj - compact model exeawars.obj - small model exeawarm.obj - medium model exeawarl.obj - large model exeawarh.obj - huge model See the "example.c" file for details on compiling and linking. It is a two-step process to enable this code: First, you must have a call in your main() function to exeaware() as shown in the "example.c" source file, and you must link with the appropriate memory model. Second, you must run the program MAKAWARE.EXE against your new "exe" file produced by the linker. Again, refer to the "example.c" file for instructions. This code offers protection that no external programs can offer. At least now, nobody can accuse YOUR program of containing a virus. Although nothing's perfect, I'm sure some hacker will come up with a way of defeating this code manually, but it would be extremely difficult for a virus to alter or defeat this code. ************************************** * Register and get the source code * ************************************** As with all shareware, try it first. If you like it, send us $10. In return for your $10, we'll send you the source code. You'll receive: EXEAWARE.C - source code needed to reproduce the exeawar?.obj files. MAKAWARE.C - source code needed to reproduce the makaware.exe file. We're not doing anything fancy here. The source code should also work with the Microsoft C compiler. The OBJ's that you now have should only work with the Turbo C compiler/linker. If you register for $15 instead of $10, we'll give you 6-months of full access to our "Virus Info" BBS in addition to the source code. Our "Virus Info" BBS deals strictly with the topic of computer viruses. You can download text, source, and programs all pertaining to computer virus prevention and detection. A great way to keep informed of the latest viruses going around. You can use your Visa/MC to phone in your order today! One final note: If you've obtained this archive from a BBS other than ours and question the integrity of these .obj's or the makaware.exe program within this archive, you can download the CAWARE.ARC file from our BBS to be certain nobody 'tinkered' with it. You don't have to be a registered user of our BBS to download this file. - Chuck Gilmore